package isssr.entity.src;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;

public class OrganizationalGoalDTO implements Serializable {

	private String 			title;
	private String 			description;
	private Integer 		priority;
	private GoalStatus 		status;
	private User 			goalOwner;
	private User			goalEnactor;
	private List<User> 		superList;
	private String 			focus;
	private String 			object;
	private String 			magnitude;
	private String 			timeframe;
	private String 			organizationalScope;
	private String 			constraints;
	private String 			relations;
	
	public OrganizationalGoalDTO(String title, String description,
			Integer priority, GoalStatus status, User goalOwner,
			User goalEnactor, Set<User> superList, String focus,
			String object, String magnitude, String timeframe,
			String organizationalScope, String constraints, String relations) {
		
		this.title 					= (title == null ? null : new String(title));
		this.description 			= (description == null ? null : new String(description));
		this.priority 				= (priority == null ? null : new Integer(priority));
		this.status 				= status;
		this.focus 					= (focus == null ? null : new String(focus));
		this.object 				= (object == null ? null : new String(object));
		this.magnitude 				= (magnitude == null ? null : new String(magnitude));
		this.timeframe 				= (timeframe == null ? null : new String(timeframe));
		this.organizationalScope 	= (organizationalScope == null ? null : new String(organizationalScope));
		this.constraints 			= (constraints == null ? null : new String(constraints));
		this.relations 				= (relations == null ? null : new String(relations));
		this.goalOwner 				= goalOwner;
		this.goalEnactor	 		= goalEnactor;
		
		if(superList != null)
			this.superList	= new ArrayList<User>(superList);
		else
			this.superList = null;
	}


	public String getTitle() {
		return title;
	}

	public void setTitle(String title) {
		this.title = title;
	}

	public String getDescription() {
		return description;
	}

	public void setDescription(String description) {
		this.description = description;
	}

	public Integer getPriority() {
		return priority;
	}

	public void setPriority(Integer priority) {
		this.priority = priority;
	}

	public GoalStatus getStatus() {
		return status;
	}

	public User getGoalOwner() {
		return goalOwner;
	}


	public void setGoalOwner(User goalOwner) {
		this.goalOwner = goalOwner;
	}


	public User getGoalEnactor() {
		return goalEnactor;
	}


	public void setGoalEnactor(User goalEnactor) {
		this.goalEnactor = goalEnactor;
	}


	public List<User> getSuperList() {
		return superList;
	}


	public void setSuperList(List<User> superList) {
		this.superList = superList;
	}


	public String getFocus() {
		return focus;
	}

	public void setFocus(String focus) {
		this.focus = focus;
	}

	public String getObject() {
		return object;
	}

	public void setObject(String object) {
		this.object = object;
	}

	public String getMagnitude() {
		return magnitude;
	}

	public void setMagnitude(String magnitude) {
		this.magnitude = magnitude;
	}

	public String getTimeframe() {
		return timeframe;
	}

	public void setTimeframe(String timeframe) {
		this.timeframe = timeframe;
	}

	public String getOrganizationalScope() {
		return organizationalScope;
	}

	public void setOrganizationalScope(String organizationalScope) {
		this.organizationalScope = organizationalScope;
	}

	public String getConstraints() {
		return constraints;
	}

	public void setConstraints(String constraints) {
		this.constraints = constraints;
	}

	public String getRelations() {
		return relations;
	}

	public void setRelations(String relations) {
		this.relations = relations;
	}
}
